package com.cqjtu.store.order.service;

import com.cqjtu.store.common.PageDTO;
import com.cqjtu.store.common.PageVO;
import com.cqjtu.store.order.pojo.DTO.OrderPageDTO;
import com.cqjtu.store.order.pojo.DTO.SetOrderDTO;
import com.cqjtu.store.order.pojo.DTO.TimeDTO;
import com.cqjtu.store.order.pojo.vo.OrderListVO;
import com.cqjtu.store.order.pojo.vo.OrderTotalVO;
import com.cqjtu.store.order.pojo.vo.OrderVO;
import com.cqjtu.store.order.pojo.vo.SetOrderVO;
import com.cqjtu.store.user.pojo.vo.UserLoginVO;

import java.text.ParseException;
import java.util.List;

public interface OrderService {
    List<OrderVO> getList(UserLoginVO userLoginVO);

    List<OrderVO> getListByStatus(Integer status, UserLoginVO userLoginVO);

    SetOrderVO insertOrder(SetOrderDTO setOrderDTO, UserLoginVO userLoginVO);

    int getRealTimeNum();

    List<OrderTotalVO> getTotalInTime(TimeDTO timeDTO);

    List<OrderTotalVO> getUserAndProductOrder(Integer userId,Integer productId);

    List<OrderTotalVO> getProductOrder(Integer productId);

    List<OrderTotalVO> getUserOrder(Integer userId);

    PageVO<List<OrderListVO>> getAllOrder(PageDTO pageDTO);

    PageVO<List<OrderListVO>> getOrderByKey(OrderPageDTO pageDTO);

    void deleteOrder(Integer id);

    int getAllOrderNum();
}
